#include "BloqueTexto.h"
#include <string>
#include <fstream>
#include <iostream>
using namespace std;

BloqueTexto::BloqueTexto(string nombrearchivo)
{
	size=1000000;
	archivo=new ifstream(nombrearchivo.c_str(),ios::binary|ios::in);
	bloque=new char[size];
	archivo->read(bloque,size);
	finArch = false;
	finBloq = false;
	cantCaracteresValidos=archivo->gcount();
	if(cantCaracteresValidos<size)
	{
		_leyomenos=true;
		cantCaracteresValidos++;
	}
	else
		_leyomenos=false;

}

void BloqueTexto::llenarBloque()
{
	this->finArch=false;
	this->finBloq=false;
	archivo->read(bloque,size);
	cantCaracteresValidos=archivo->gcount();
	if(cantCaracteresValidos==0) finArch=true;
	if(cantCaracteresValidos<size)
	{
		_leyomenos=true;
			cantCaracteresValidos++;
	}
	else
		_leyomenos=false;
}

char BloqueTexto::operator[](int n)
{
	return bloque[n];
}

BloqueTexto::~BloqueTexto()
{
	if(archivo!=0)
	{
		archivo->close();
		delete archivo;
		archivo=0;
	}
	delete[] bloque;
	bloque=0;
}
